﻿#region Copyright (c) 2015 Nathan Brown
/**********************************************************************************
*   Copyright (c) 2015 Nathan Brown
*   This work is licensed under the Microsoft Reciprocal License (MS-RL)
*   To view a copy of this license, visit http://www.microsoft.com/en-us/openness/licenses.aspx
*   Any use or rights not covered in above license are reserved.
*   Use of this work or any derivative constitute an acceptance of all license terms and conditions.
*   
*   Exact Synergy Enterprise(r) is a registered trademark of Exact International Development B.V. 
*   K2(r) is a registered trademark of SourceCode Technology Holdings, Inc.
*   
*   Project: NAB.K2.SynergyBroker
*   Namespace: NAB.K2.SynergyBroker.Exact.Synergy.Entities
*   Written by: nathan.brown 
**********************************************************************************/
#endregion

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.34209
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

namespace NAB.K2.SynergyBroker.Exact.Synergy.Entities {
    using System.Runtime.Serialization;
    using System;
    
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="RetrieveCriteria", Namespace="http://www.exactsoftware.com/schemas/entities/")]
    [System.SerializableAttribute()]
    public partial class RetrieveCriteria : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long BatchSizeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string EntityNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private NAB.K2.SynergyBroker.Exact.Synergy.Entities.FilterQuery FilterQueryField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long SessionIdField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long BatchSize {
            get {
                return this.BatchSizeField;
            }
            set {
                if ((this.BatchSizeField.Equals(value) != true)) {
                    this.BatchSizeField = value;
                    this.RaisePropertyChanged("BatchSize");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string EntityName {
            get {
                return this.EntityNameField;
            }
            set {
                if ((object.ReferenceEquals(this.EntityNameField, value) != true)) {
                    this.EntityNameField = value;
                    this.RaisePropertyChanged("EntityName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public NAB.K2.SynergyBroker.Exact.Synergy.Entities.FilterQuery FilterQuery {
            get {
                return this.FilterQueryField;
            }
            set {
                if ((object.ReferenceEquals(this.FilterQueryField, value) != true)) {
                    this.FilterQueryField = value;
                    this.RaisePropertyChanged("FilterQuery");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long SessionId {
            get {
                return this.SessionIdField;
            }
            set {
                if ((this.SessionIdField.Equals(value) != true)) {
                    this.SessionIdField = value;
                    this.RaisePropertyChanged("SessionId");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="FilterQuery", Namespace="http://www.exactsoftware.com/schemas/entities/")]
    [System.SerializableAttribute()]
    public partial class FilterQuery : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.QueryProperty> PropertiesField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.QueryProperty> Properties {
            get {
                return this.PropertiesField;
            }
            set {
                if ((object.ReferenceEquals(this.PropertiesField, value) != true)) {
                    this.PropertiesField = value;
                    this.RaisePropertyChanged("Properties");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="QueryProperty", Namespace="http://www.exactsoftware.com/schemas/entities/")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityFault))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExactBaseFault))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExceptionInfo>))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExceptionInfo))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.RetrieveCriteria))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.FilterQuery))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.QueryProperty>))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntitiesData))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityData>))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityData))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.PropertyData>))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.PropertyData))]
    public partial class QueryProperty : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string OperationField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string PropertyNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private object PropertyValueField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Operation {
            get {
                return this.OperationField;
            }
            set {
                if ((object.ReferenceEquals(this.OperationField, value) != true)) {
                    this.OperationField = value;
                    this.RaisePropertyChanged("Operation");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string PropertyName {
            get {
                return this.PropertyNameField;
            }
            set {
                if ((object.ReferenceEquals(this.PropertyNameField, value) != true)) {
                    this.PropertyNameField = value;
                    this.RaisePropertyChanged("PropertyName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public object PropertyValue {
            get {
                return this.PropertyValueField;
            }
            set {
                if ((object.ReferenceEquals(this.PropertyValueField, value) != true)) {
                    this.PropertyValueField = value;
                    this.RaisePropertyChanged("PropertyValue");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="EntityFault", Namespace="http://www.exactsoftware.com/schemas/faults/")]
    [System.SerializableAttribute()]
    public partial class EntityFault : NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExactBaseFault {
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.DateTime DateTimeField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExceptionInfo> ExceptionsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string SourceField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int TermIDField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string UserField;
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.DateTime DateTime {
            get {
                return this.DateTimeField;
            }
            set {
                if ((this.DateTimeField.Equals(value) != true)) {
                    this.DateTimeField = value;
                    this.RaisePropertyChanged("DateTime");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExceptionInfo> Exceptions {
            get {
                return this.ExceptionsField;
            }
            set {
                if ((object.ReferenceEquals(this.ExceptionsField, value) != true)) {
                    this.ExceptionsField = value;
                    this.RaisePropertyChanged("Exceptions");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Source {
            get {
                return this.SourceField;
            }
            set {
                if ((object.ReferenceEquals(this.SourceField, value) != true)) {
                    this.SourceField = value;
                    this.RaisePropertyChanged("Source");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int TermID {
            get {
                return this.TermIDField;
            }
            set {
                if ((this.TermIDField.Equals(value) != true)) {
                    this.TermIDField = value;
                    this.RaisePropertyChanged("TermID");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string User {
            get {
                return this.UserField;
            }
            set {
                if ((object.ReferenceEquals(this.UserField, value) != true)) {
                    this.UserField = value;
                    this.RaisePropertyChanged("User");
                }
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="WSExactBaseFault", Namespace="http://www.exactsoftware.com/schemas/faults/")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityFault))]
    public partial class WSExactBaseFault : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string MessageField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Message {
            get {
                return this.MessageField;
            }
            set {
                if ((object.ReferenceEquals(this.MessageField, value) != true)) {
                    this.MessageField = value;
                    this.RaisePropertyChanged("Message");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="WSExceptionInfo", Namespace="http://www.exactsoftware.com/schemas/faults/")]
    [System.SerializableAttribute()]
    public partial class WSExceptionInfo : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string MessageField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string NameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string PropertyNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private int TermIDField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Message {
            get {
                return this.MessageField;
            }
            set {
                if ((object.ReferenceEquals(this.MessageField, value) != true)) {
                    this.MessageField = value;
                    this.RaisePropertyChanged("Message");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Name {
            get {
                return this.NameField;
            }
            set {
                if ((object.ReferenceEquals(this.NameField, value) != true)) {
                    this.NameField = value;
                    this.RaisePropertyChanged("Name");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string PropertyName {
            get {
                return this.PropertyNameField;
            }
            set {
                if ((object.ReferenceEquals(this.PropertyNameField, value) != true)) {
                    this.PropertyNameField = value;
                    this.RaisePropertyChanged("PropertyName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public int TermID {
            get {
                return this.TermIDField;
            }
            set {
                if ((this.TermIDField.Equals(value) != true)) {
                    this.TermIDField = value;
                    this.RaisePropertyChanged("TermID");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="EntitiesData", Namespace="http://www.exactsoftware.com/schemas/entities/")]
    [System.SerializableAttribute()]
    public partial class EntitiesData : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityData> EntitiesField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string EntityNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private long SessionIDField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityData> Entities {
            get {
                return this.EntitiesField;
            }
            set {
                if ((object.ReferenceEquals(this.EntitiesField, value) != true)) {
                    this.EntitiesField = value;
                    this.RaisePropertyChanged("Entities");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string EntityName {
            get {
                return this.EntityNameField;
            }
            set {
                if ((object.ReferenceEquals(this.EntityNameField, value) != true)) {
                    this.EntityNameField = value;
                    this.RaisePropertyChanged("EntityName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public long SessionID {
            get {
                return this.SessionIDField;
            }
            set {
                if ((this.SessionIDField.Equals(value) != true)) {
                    this.SessionIDField = value;
                    this.RaisePropertyChanged("SessionID");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="EntityData", Namespace="http://www.exactsoftware.com/schemas/entities/")]
    [System.SerializableAttribute()]
    public partial class EntityData : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string EntityNameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.PropertyData> PropertiesField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string EntityName {
            get {
                return this.EntityNameField;
            }
            set {
                if ((object.ReferenceEquals(this.EntityNameField, value) != true)) {
                    this.EntityNameField = value;
                    this.RaisePropertyChanged("EntityName");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.PropertyData> Properties {
            get {
                return this.PropertiesField;
            }
            set {
                if ((object.ReferenceEquals(this.PropertiesField, value) != true)) {
                    this.PropertiesField = value;
                    this.RaisePropertyChanged("Properties");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "4.0.0.0")]
    [System.Runtime.Serialization.DataContractAttribute(Name="PropertyData", Namespace="http://www.exactsoftware.com/schemas/entities/")]
    [System.SerializableAttribute()]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityFault))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExactBaseFault))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExceptionInfo>))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.WSExceptionInfo))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.RetrieveCriteria))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.FilterQuery))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.QueryProperty>))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.QueryProperty))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntitiesData))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityData>))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityData))]
    [System.Runtime.Serialization.KnownTypeAttribute(typeof(System.Collections.Generic.List<NAB.K2.SynergyBroker.Exact.Synergy.Entities.PropertyData>))]
    public partial class PropertyData : object, System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged {
        
        [System.NonSerializedAttribute()]
        private System.Runtime.Serialization.ExtensionDataObject extensionDataField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private string NameField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private bool NoRightsField;
        
        [System.Runtime.Serialization.OptionalFieldAttribute()]
        private object ValueField;
        
        [global::System.ComponentModel.BrowsableAttribute(false)]
        public System.Runtime.Serialization.ExtensionDataObject ExtensionData {
            get {
                return this.extensionDataField;
            }
            set {
                this.extensionDataField = value;
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public string Name {
            get {
                return this.NameField;
            }
            set {
                if ((object.ReferenceEquals(this.NameField, value) != true)) {
                    this.NameField = value;
                    this.RaisePropertyChanged("Name");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public bool NoRights {
            get {
                return this.NoRightsField;
            }
            set {
                if ((this.NoRightsField.Equals(value) != true)) {
                    this.NoRightsField = value;
                    this.RaisePropertyChanged("NoRights");
                }
            }
        }
        
        [System.Runtime.Serialization.DataMemberAttribute()]
        public object Value {
            get {
                return this.ValueField;
            }
            set {
                if ((object.ReferenceEquals(this.ValueField, value) != true)) {
                    this.ValueField = value;
                    this.RaisePropertyChanged("Value");
                }
            }
        }
        
        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;
        
        protected void RaisePropertyChanged(string propertyName) {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null)) {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(Namespace="http://www.exactsoftware.com/services/entities/", ConfigurationName="Exact.Synergy.Entities.entityset")]
    public interface entityset {
        
        [System.ServiceModel.OperationContractAttribute(Action="http://www.exactsoftware.com/services/entities/entityset/RetrieveSet", ReplyAction="http://www.exactsoftware.com/services/entities/entityset/RetrieveSetResponse")]
        [System.ServiceModel.FaultContractAttribute(typeof(NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntityFault), Action="http://www.exactsoftware.com/services/entities/entityset/RetrieveSetEntityFaultFa" +
            "ult", Name="EntityFault", Namespace="http://www.exactsoftware.com/schemas/faults/")]
        NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntitiesData RetrieveSet(NAB.K2.SynergyBroker.Exact.Synergy.Entities.RetrieveCriteria data);
        
        [System.ServiceModel.OperationContractAttribute(Action="http://www.exactsoftware.com/services/entities/entityset/RetrieveSet", ReplyAction="http://www.exactsoftware.com/services/entities/entityset/RetrieveSetResponse")]
        System.Threading.Tasks.Task<NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntitiesData> RetrieveSetAsync(NAB.K2.SynergyBroker.Exact.Synergy.Entities.RetrieveCriteria data);
    }
    
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public interface entitysetChannel : NAB.K2.SynergyBroker.Exact.Synergy.Entities.entityset, System.ServiceModel.IClientChannel {
    }
    
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "4.0.0.0")]
    public partial class entitysetClient : System.ServiceModel.ClientBase<NAB.K2.SynergyBroker.Exact.Synergy.Entities.entityset>, NAB.K2.SynergyBroker.Exact.Synergy.Entities.entityset {
        
        public entitysetClient() {
        }
        
        public entitysetClient(string endpointConfigurationName) : 
                base(endpointConfigurationName) {
        }
        
        public entitysetClient(string endpointConfigurationName, string remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public entitysetClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(endpointConfigurationName, remoteAddress) {
        }
        
        public entitysetClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : 
                base(binding, remoteAddress) {
        }
        
        public NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntitiesData RetrieveSet(NAB.K2.SynergyBroker.Exact.Synergy.Entities.RetrieveCriteria data) {
            return base.Channel.RetrieveSet(data);
        }
        
        public System.Threading.Tasks.Task<NAB.K2.SynergyBroker.Exact.Synergy.Entities.EntitiesData> RetrieveSetAsync(NAB.K2.SynergyBroker.Exact.Synergy.Entities.RetrieveCriteria data) {
            return base.Channel.RetrieveSetAsync(data);
        }
    }
}
